package com.situ.web.service.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.session.SqlSession;

import com.situ.web.entity.Department;
import com.situ.web.entity.PageBean;
import com.situ.web.entity.Role;
import com.situ.web.entity.User;
import com.situ.web.mapper.IUserMapper;
import com.situ.web.service.IUserService;
import com.situ.web.util.MyBatisUtil;

public class UserServiceImpl implements IUserService{
	
	private IUserMapper userMapper;
	
	
	public UserServiceImpl() {
		 SqlSession sqlSession = MyBatisUtil.getSqlSession();
		 userMapper = sqlSession.getMapper(IUserMapper.class);
	}

	@Override
	public PageBean pageList(int pageNo, int pageSize) {
		PageBean pageBean = new PageBean();
		pageBean.setPageNo(pageNo);
		pageBean.setPageSize(pageSize);
		
		
		int count = userMapper.getTotalCount();
		int totalPage = (int) Math.ceil((double)count/pageSize);
		pageBean.setTotalPage(totalPage);
		
		//当前页数据
		int offset = (pageNo - 1) * pageSize;
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("offset",offset);
		map.put("pageSize",pageSize);
		List<User> list = userMapper.pageList(map);
		pageBean.setList(list);
		
		return pageBean;
	}
//
//	@Override
//	public List<Map<String, Object>> search(String searchName) {
//		return userDao.search(searchName);
//	}
//
//	@Override
//	public boolean deleteById(Integer id) {
//		int count = userDao.deleteById(id);
//		return count == 1 ? true : false;
//	}
//
//	@Override
//	public User selectById(int id) {
//		return userDao.selectById(id);
//	}
//
//	@Override
//	public boolean update(User user) {
//		int count = userDao.update(user);
//		return count == 1 ? true : false;
//	}
//
//	@Override
//	public boolean insert(User user) {
//		List<User> list = userDao.selectByName(user.getName());
//		if (list.size() > 0) {
//			System.out.println("该用户已存在");
//			return false;
//		} else {
//			int count = userDao.insert(user);
//			return count == 1 ? true : false;
//		}
//	}
//
//	@Override
//	public List<Role> selectRole() {
//		List<Role> list = userDao.selectRole();
//		return list;
//	}
//
//	@Override
//	public List<Department> selectDepartment() {
//		List<Department> list = userDao.selectDepartment();
//		return list;
//	}

	@Override
	public List<Map<String, Object>> search(String searchName) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean deleteById(Integer id) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public User selectById(int id) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean update(User user) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean insert(User user) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public List<Role> selectRole() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<Department> selectDepartment() {
		// TODO Auto-generated method stub
		return null;
	}

}
